A method of avoiding artifacts when printing at the border between two different halftone screens by using a computation to match the two tone reproduction curves (TRC).
In a printer, and more particularly in a color printer, each color separation is calibrated by generating a TRC which determines how much toner will be applied for a given image data input, over the entire range of luminance. In this discussion, “luminance” is meant to cover density, Delta-e from paper, brightness or any other light measurement. A typical method of generating a TRC is to measure the luminance of a set of color patches produced by the target printer and toner. These are plotted against the actual number of ON pixels in the dot to create a smooth “primary screen characteristic”. This curve is then normalized, transposed and rounded up or down to form the TRC, which is the same data, but converted into individual points of integer values for use in a halftone screen. For a numerical example, in a system where the screen values are 0 to 256, if a patch that appears to be 50% gray is required, the digital output value may be quite a bit higher or lower than the mathematical midpoint of 128 in order to put down exactly that amount of toner to appear to be 50% gray. In this case the number “128” would be the TRC input value, and a number somewhat different would be the output, to be used as the number of ON pixels in the screen. Several TRC curves are generated, one for each separation, usually black, cyan, magenta and yellow.
It is also typical in color printing to have halftone screens of varying frequencies, with the higher frequencies being used for graphics and text where accurate outlines are needed, and lower frequencies being used for color pictures where a greater variation of colors is needed. Halftone screens that vary in some characteristic other than frequency may also be used. In this discussion, frequency will be used as the example. In this case, a TRC for each frequency of each separation must be generated. Then, as the raster proceeds from one type of screen to another, the TRC's are switched from one set to another.
This system works well enough in an ordinary printer, but for quality color printing, and especially if trapping is used, an artifact may be produced at the border between screens of the same color but of different frequencies if the TRC's do not track together closely enough. For a numerical example, let us assume that the high frequency halftone is 8×8 pixels with image data values of 0 to 64 and the low frequency halftone is 16 by 16 with values from 0 to 256, so that there is a ratio of 1 to 4. Therefore a high frequency image density value of 10 should be the same color density as a low frequency image density value of 40. Further, the TRC's are not continuous lines but are actually a series of points that are defined as integers, to be used to in a halftone screen, and so there is an inevitable amount of rounding up or down for each value. If, for example, the point is rounded up in one TRC and down in the other, there will be a visual artifact in luminance as the screen is switched between them.
This artifact can be eliminated if the primary (low frequency) and secondary (high frequency) curves track as closely as possible. This can be accomplished by using each point on the primary screen TRC (rather than the secondary screen characteristic as in the prior art) as the starting point to generate the corresponding point on the secondary screen TRC. This results in better tracking between the two because, to oversimplify, if the primary value was calculated by rounding up (rather than rounding down), and the secondary value is a function of the primary, then the process will tend to result in a larger value for the secondary as well, and better agreement results.
Points on the secondary TRC are generated from a series of equivalent points of the primary. The specific process for generating one point on the secondary TRC from the corresponding point on the primary TRC can be explained as follows, assuming that the secondary screen is n times the frequency of the primary.
1. A point P2 on the primary TRC is selected.
2. A point P3 on the primary characteristic having the same output value as P2 is selected.
3. A point P4 on the secondary characteristic having the same luminance as P3 is selected.
4. A point P5 having 1/n2 the input value of P2 and the same output value as P4 is selected.
5. The point of the secondary TRC can now be determined by rounding the output value of P5 up or down to the nearest integer.
The two resultant TRC's will track more closely than they would have if formed independently since, in this case, the secondary value is a function of the rounding, up or down, of the primary.